package dao;

import java.sql.SQLException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Collection;
import java.util.GregorianCalendar;

import pojo.Pregunta;



public class PreguntasDAO extends ConexionDAO {
	
	private static final String INSERT_STATEMENT = 
			"insert into preguntas VALUES" +
			"(null,?,?,?,?,?,?,?,?,?,?);";
		
		/*delimiter $$

CREATE TABLE `preguntas` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `a` varchar(100) DEFAULT NULL,
  `b` varchar(100) DEFAULT NULL,
  `c` varchar(100) DEFAULT NULL,
  `d` varchar(100) DEFAULT NULL,
  `respuestaCorrecta` char(1) DEFAULT NULL,
  `enunciado` text,
  `explicacion` text,
  `cabeceraEnunciado` varchar(45) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1$$


*/
		public String crearPregunta(Pregunta pregunta) {
			try {
				getConexion();
				estamento = conexion.createStatement();
				preparada = conexion.prepareStatement(INSERT_STATEMENT);
				preparada.setString(1, pregunta.getA());
				preparada.setString(2, pregunta.getB());
				preparada.setString(3, pregunta.getC());
				preparada.setString(4, pregunta.getD());
				preparada.setString(5, pregunta.getRespuestaCorrecta());
				preparada.setString(6, pregunta.getEnunciado());
				preparada.setString(7, pregunta.getExplicacion());
				preparada.setString(8, pregunta.getCabeceraEnunciado());
				preparada.setString(9, pregunta.getE());
				preparada.setString(10, pregunta.getF());
				preparada.executeUpdate();
			} catch(SQLException ex){
				ex.printStackTrace();
				return "Error";
			} finally {
				cerrar();
			}
			return "ok";
			
		}
	
	
	
	public Collection<Pregunta> leerPregunta(String clausulaWhere){
		Collection<Pregunta> lista = new ArrayList<Pregunta>();
		try {
			/*
CREATE TABLE `preguntas` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `a` text,
  `b` text,
  `c` text,
  `d` text,
  `respuestaCorrecta` text,
  `enunciado` text,
  `explicacion` text,
  `cabeceraEnunciado` text,
  `e` text,
  `f` text,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=94 DEFAULT CHARSET=latin1$$
			 * 
			 * */			
			
			getConexion();
			estamento = conexion.createStatement();
			resultado = estamento.executeQuery
				("SELECT * FROM preguntas " + clausulaWhere);
			while(resultado.next()){
				Pregunta pregunta = new Pregunta();
				pregunta.setId(resultado.getInt("id"));
				pregunta.setA(resultado.getString("a"));
				pregunta.setB(resultado.getString("b"));
				pregunta.setC(resultado.getString("c"));
				pregunta.setD(resultado.getString("d"));
				pregunta.setRespuestaCorrecta(resultado.getString("respuestaCorrecta"));
				pregunta.setEnunciado(resultado.getString("enunciado"));
				pregunta.setExplicacion(resultado.getString("explicacion"));
				pregunta.setCabeceraEnunciado(resultado.getString("cabeceraEnunciado"));
				pregunta.setE(resultado.getString("e"));
				pregunta.setF(resultado.getString("f"));			
								
				lista.add(pregunta);
			}
		} catch(SQLException ex){
			ex.printStackTrace();
		} finally {
			cerrar();
		}
		return lista;	
	}
	

	
}